package jp.co.piratealliance.pirateAllianceWeb.service.order;

import java.util.List;

import jp.co.piratealliance.pirateAllianceWeb.dto.order.EvaluationInfoDto;
import jp.co.piratealliance.pirateAllianceWeb.dto.order.EventInfoDto;
import jp.co.piratealliance.pirateAllianceWeb.dto.order.MessageInfoDto;
import jp.co.piratealliance.pirateAllianceWeb.dto.order.OrderHisInfoDto;
import jp.co.piratealliance.pirateAllianceWeb.dto.order.OrderInfoDto;
import jp.co.piratealliance.pirateAllianceWeb.dto.order.ScheduleInfoDto;
import jp.co.piratealliance.pirateAllianceWeb.dto.order.ServiceGoodsOrderDetailInfoDto;


/**
*
* copyright   pirate alliance team 2014
* @author     lunxing
*
*/
public interface OrderService {

	OrderInfoDto getOrdersByUserIdAndGoodsIdOne(String user_id, String goods_id, String language_id);

	List<ServiceGoodsOrderDetailInfoDto> getServiceGoodsOrderDetailByOrderId(String order_id);

	List<ScheduleInfoDto> getScheduleByOrderId(String order_id);

	List<EventInfoDto> getEventByScheduleId(String schedule_id);

	List<EventInfoDto> getEventByOrderId(String order_id);

	int insertOrder(OrderInfoDto orderInfoDto);

	int insertServiceGoodsOrderDetail(ServiceGoodsOrderDetailInfoDto serviceGoodsOrderDetailInfoDto);

	int insertSchedule(ScheduleInfoDto scheduleInfoDto);

	int insertEvent(EventInfoDto eventInfoDto);

	int updateOrder(OrderInfoDto orderInfoDto,MessageInfoDto messageInfoDto);

	int updateOrder(OrderInfoDto orderInfoDto);

	int updateServiceGoodsOrderDetail(ServiceGoodsOrderDetailInfoDto erviceGoodsOrderDetailInfoDto);

	int updateSchedule(ScheduleInfoDto scheduleInfoDto);

	List<OrderHisInfoDto> selectOrderHis(String userId, String status);

	int updateEvent(EventInfoDto eventInfoDto);

	int deleteScheduleByOrderId(String order_id);

	int deleteEventByScheduleId(String schedule_id);

	int deleteEventByOrderId(String order_id);

	//取得商品对应的所有评价信息
	List<EvaluationInfoDto> getEvaluationInfoListByGoodsId(String goods_id);

	Integer getAverageEvaluation(String goods_id);
}
